<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>CMSIS-DAP: Configure USB Peripheral</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="cmsis.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 46px;">
  <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">CMSIS-DAP
   &#160;<span id="projectnumber">Version 0.01 - Beta</span>
   </div>
   <div id="projectbrief">Interface Firmware for CoreSight Debug Access Port</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<div id="CMSISnav" class="tabs1">
    <ul class="tablist">
      <li class="current"><a href="../../DAP/html/index.html"><span>DAP</span></a></li>
    </ul>
</div>
<!-- Generated by Doxygen 1.8.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Reference</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group___d_a_p___config_u_s_b__gr.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">Configure USB Peripheral</div>  </div>
<div class="ingroups"><a class="el" href="group___d_a_p___config__gr.html">Firmware Configuration</a></div></div><!--header-->
<div class="contents">
<p>CMSIS-DAP Firmware uses USB HID as interface to host computer. </p>
<p>The CMSIS-DAP Firmware uses MDK Professional middleware components to access the USB peripheral of the microcontroller. The CMSIS-DAP Firmware uses the USB Human Interface Device (HID) class that does not require any USB driver development for the host computer. However it is important to provide correct configuration information for the USB Peripheral as described in this section.</p>
<p>The following steps describe how to change and configure the USB peripheral in the CMSIS-DAP Firmware project:</p>
<ol type="1">
<li>In the <b>Project Window</b> replace the file that belong to the group <b>USB Driver</b> with the relavant files for the new device.</li>
<li>Open the file <b>usb_config_USB0.c</b> in the editor and select <b>Configuration Wizard</b> as edit mode; then change the following settings:<ul>
<li><b>USB Device - High-speed</b>: enable this option only for a high-speed USB peripheral; disable for full-speed USB.</li>
<li>Update <b>Vendor ID</b> which is provided by the <a href="http://www.usb.org/developers/vendor/" target="_blank">USB Implementers Forum</a>.</li>
<li>Update <b>Product ID</b> to provide a unique idenification for the Debug Unit.</li>
<li>Update <b>Device Release Number</b> to indicate the revision of the adaptation.</li>
<li>Update <b>Manufacturer String</b> to reflect the vendor of the Debug Unit. This setting should match the <b>Vendor ID</b>.</li>
<li>Update <b>Product String</b> to indicate the Debug Unit. Note that "CMSIS-DAP" must be part of that string to allow identification by debuggers.</li>
<li>Optionally each Debug Unit may provide a unique <b>Serial Number String</b>.</li>
</ul>
</li>
</ol>
<dl class="section note"><dt>Note:</dt><dd><ul>
<li>The USB Device setting high-speed / full-speed USB must be reflected in the <b>DAP_config.h</b> file as described under <a class="el" href="group___d_a_p___config__gr.html">Firmware Configuration</a>.</li>
<li>The <b>Product String</b> must contain "CMSIS-DAP" somewhere in the string. This is used by the debuggers to idenify a CMSIS-DAP complainant Debug Unit that is connected to a host computer.</li>
</ul>
</dd></dl>
<div class="image">
<img src="MDK_USB.png" alt="MDK_USB.png"/>
<div class="caption">
Adapt the USB Peripheral to the microcontroller</div></div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated on Wed Jun 6 2012 13:44:57 for CMSIS-DAP by ARM Ltd. All rights reserved.
	<!--
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.1 
	-->
	</li>
  </ul>
</div>
</body>
</html>
